package cn.tedu.boyou.mgrsite.job;

import cn.tedu.boyou.acticle.service.IStrategyDetailService;
import cn.tedu.boyou.acticle.vo.StrategyStatisVO;
import cn.tedu.boyou.cache.service.IStrategyStatisRedisService;
import com.alibaba.dubbo.config.annotation.Reference;
import org.springframework.scheduling.annotation.Scheduled;

import java.util.List;

/**
 * 定时任务：定时通过redis中的数据
 * 1：@Component
 */
//@Component
public class RedisDataPersistenceJob {

    //Seconds Minutes Hours DayofMonth   Month  DayofWeek Year
    //秒        分       时    月份中的日期          星期   年
    //Seconds Minutes Hours DayofMonth   Month DayofWeek
    //     0    0      2     1            *      ?         *  表示在每月的1日的凌晨2点调整任务
    //     0    0

    //指定doWork方法运行的惠泽
    //定时任务的执行计划

    @Reference
    private IStrategyStatisRedisService strategyStatisRedisService;
    @Reference
    private IStrategyDetailService strategyDetailService;

    @Scheduled(cron="*/10 * * * * ?")
    public void doWork(){
        System.out.println("-----------------begin");
        List<StrategyStatisVO> statisVos = strategyStatisRedisService.getStatisVos();
        for (StrategyStatisVO statisVo : statisVos) {
            strategyDetailService.updateStatisData(statisVo);
        }
        System.out.println("-----------------end");
    }
}
